package com.atguigu.gmall.payment.service;

import java.util.Map;
@SuppressWarnings("all")
public interface AlipayService {
    /**
     * 调用支付宝接口产生支付页面
     * @param orderId 订单id
     * @return 支付二维码
     */
    String createAlipayForm(Long orderId);

    /**
     * 支付宝处理完成用户支付成功后,异步通知支付结果给用户
     * @param paramsMap 支付提交参数
     * @return
     */
    String notifyGmallResult(Map<String, String> paramsMap);

    /**
     * 上方协商一致后,根据用户提交订单id退款
     * @param orderId 订单id
     */
    void refund(Long orderId);

    /**
     * 根据支付宝交易号关闭支付宝交易(就是让页面二维码失效)
     * @param tradeNo 支付宝交易号
     * @param outTradeNo
     */
    void closeZhiFuBaoTrade(String tradeNo,String outTradeNo);

    /**
     * 根据支付宝交易号,查询支付宝交易状态
     * @param tradeNo
     * @param outTradeNo
     * @return
     */
    String getZhiFuBaoTradeStatus(String tradeNo,String outTradeNo);
}